home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / faqs / faq / fsp-faq < prev    next >
Encoding:
Text File  |  1995-07-25  |  22.6 KB  |  534 lines

  1. Subject: FSP Frequently Asked Questions (Read This Before Posting!)
  2. Newsgroups: alt.comp.fsp,alt.answers,news.answers
  3. From: pete@sst.icl.co.uk (Pete Bevin)
  4. Date: Tue, 28 Sep 1993 02:08:04 GMT
  5.  
  6. Archive-name: fsp-faq
  7. Last-modified: 21st August 1993
  8.  
  9. Frequently Asked Questions about FSP
  10. ------------------------------------
  11.  
  12. *** Please read this before posting to alt.comp.fsp. ***
  13.  
  14. ##########################################################################
  15. ### IMPORTANT NOTICE: EVERYONE PLEASE READ THIS!
  16. ###
  17. ### Joseph Traub is no longer the FSP maintainer, and the site he
  18. ### maintained at seismo.soar.cs.cmu.edu no longer runs an FSP daemon.
  19. ### Please do NOT mail anyone at CMU about the FSP server -- the admins
  20. ### there have complained about the volume of unwanted mail.
  21. ###
  22. ### If you have questions about FSP, please mail one of the new
  23. ### maintainers -- see below for details.
  24. ##########################################################################
  25.  
  26. This is the answers to some of the frequently asked questions about FSP.
  27. It is posted weekly to alt.comp.fsp, alt.answers and news.answers.
  28.  
  29. This article answers the following questions.
  30.  
  31. Section 1: Introduction and Help
  32.         Q1.1 What's alt.comp.fsp?  What's FSP?
  33.         Q1.2 Where can I get FSP?
  34.         Q1.3 Help!  I don't understand how to use FSP!
  35.         Q1.4 What are those funny "R" and "I" characters?
  36.         Q1.5 Why should I, as a site admin, run an FSP daemon?
  37.  
  38. Section 2: FSP software and resources
  39.         Q2.1 Where can I get an FTP-like interface for FSP?
  40.         Q2.2 Where can I get a graphical interface for FSP?
  41.         Q2.3 Where can I get hold of a list of sites?
  42.         Q2.4 Where can I get hold of hundreds of pictures of naked women
  43.              in compromising positions?
  44.  
  45. Section 3: Technical Issues
  46.         Q3.1 What are the main differences between FSP and FTP?  How
  47.              does FSP work?
  48.         Q3.2 How secure/anonymous is FSP?
  49.         Q3.3 Why not add passwords to FSP?
  50.         Q3.4 So what *does* FSP stand for?
  51.  
  52. Section 4: Who's who in FSP?
  53.         Q4.1 Who wrote FSP?
  54.         Q4.2 Who helped put this FAQ together?
  55.  
  56.  
  57. This FAQ is written and maintained by Pete Bevin (pete@sst.icl.co.uk)
  58. with help from Phil Richards (pgr@sst.icl.co.uk).
  59.  
  60. If you have any comments, suggestion, or additions, send me (Pete) some mail.
  61.  
  62.  
  63. Section 1: Introduction and Help
  64.  
  65. Q1.1: What's alt.comp.fsp?  What's fsp?
  66.  
  67.         Alt.comp.fsp is a Usenet newsgroup for discussing the FSP file
  68.         transmission protocol.  It was created on Tuesday 4th May 1993
  69.         by Wen-King Su (wen-king@cs.caltech.edu) after there was no
  70.         objection on alt.config.  Before the newsgroup, there was a
  71.         mailing list (fsp-discussion) for talking about FSP software
  72.         internals.  This newsgroup is for discussion of both writing and
  73.         using the software.
  74.  
  75.         FSP is a protocol, a bit like FTP (but see below), for moving
  76.         files around.  It's designed for anonymous archives, and has
  77.         protection against server and network overloading.  It doesn't
  78.         use connections, so it can survive things falling over.
  79.  
  80.         Quote: `FSP is what anonymous FTP *should* be'.
  81.  
  82.  
  83. Q1.2: Where can I get FSP from?
  84.  
  85.         The `official' place for FSP distributions is ftp.germany.eu.net
  86.         (192.76.144.75), in the directory /pub/network/inet/fsp.  It is
  87.         available both by FTP and FSP: the FSP server is on port 2001.
  88.         Another official site is taxus.uib.no (129.177.30.10), which
  89.         only runs an FSP server -- it's on port 9000.  The directory
  90.         on taxus is /fspdist.
  91.  
  92.         (Note: If you're using Unix, and you don't want to set up a
  93.         server, you will probably want to get one of the FTP-like clients
  94.         instead -- fspclient, fspcli, or fspsh -- from the same place).
  95.  
  96.         The latest versions are:
  97.  
  98.                 Unix, VMS:      fsp.271.tar.gz
  99.                 OS/2:           fsp2-03b.zip
  100.                 MS-DOS:         pcfsp104.zip
  101.  
  102.         The Unix version is the `original', and was originally written by
  103.         Wen-King Su: Joseph Traub took over for a while, and Phil Richards
  104.         and Pete Bevin maintain it now.  The same distribution contains
  105.         patches by Sven Pechler to make it run on VMS.  Larkin Lowrey
  106.         wrote the OS/2 version, and Lindsey Smith wrote the MS-DOS
  107.         version.  Email addresses are at the end.
  108.  
  109.         (A note about .gz and .z files: they are compressed using GNU
  110.         gzip.  Ask your local guru, or read the FAQ for comp.compression.)
  111.  
  112.         There is no Mac version, and no VM version.  If you want to get
  113.         famous, here's your chance to get on the FSP bandwagon :-)
  114.  
  115.  
  116. Q1.3: Help!  I don't understand how to use FSP!
  117.  
  118.         If you're already familiar with FTP, you might want to use one
  119.         of the FTP-like clients instead, or even a graphical interface.
  120.         See the answers to questions 2.1 and 2.2 below for details of
  121.         how to get them.
  122.  
  123.         The following tutorial is adapted from an article in
  124.         alt.comp.fsp by David DeSimone <fox@netcom.com>.
  125.  
  126.         The original FSP seems to have been designed for use with csh
  127.         aliases, so if you use csh, try these aliases in your .cshrc:
  128.  
  129.         # FSP aliases:
  130.         alias fcat   '(set noglob; exec fcatcmd \!*)'
  131.         alias fcd    'setenv FSP_DIR `(set noglob; exec fcdcmd \!*)`'
  132.         alias fget   '(set noglob; exec fgetcmd \!*)'
  133.         alias fgrab  '(set noglob; exec fgrabcmd \!*)'
  134.         alias fls    '(set noglob; exec flscmd -F \!*)'
  135.         alias fll    '(set noglob; exec flscmd -l \!*)'
  136.         alias fpro   '(set noglob; exec fprocmd \!*)'
  137.         alias fpwd   'echo "$FSP_HOST ($FSP_PORT): $FSP_DIR"'
  138.         alias frm    '(set noglob; exec frmcmd \!*)'
  139.         alias frmdir '(set noglob; exec frmdircmd \!*)'
  140.         alias fhost  'set fsp_host=(\!*); source ~/bin/fhost; unset fsp_host'
  141.  
  142.         The last alias, "fhost", is my own invention, and the ~/bin/fhost
  143.         file looks like this:
  144.  
  145.         #!/bin/csh
  146.         #
  147.         # Since this script sets environment variables, it really needs
  148.         # to be source'd rather than executed.  Thus the following alias
  149.         # should be used:
  150.         #
  151.         # alias fhost 'set fsp_host=(\!*); source ~/.bin/fhost; unset fsp_host'
  152.         #
  153.  
  154.         if ( $#fsp_host > 0 ) then
  155.  
  156.             setenv FSP_HOST $fsp_host[1]
  157.  
  158.             if ( $#fsp_host > 1 ) then
  159.                 setenv FSP_PORT $fsp_host[2]
  160.             else
  161.                 setenv FSP_PORT 21
  162.             endif
  163.  
  164.             if ( $#fsp_host > 2 ) then
  165.                 setenv FSP_DIR $fsp_host[3]
  166.             else
  167.                 setenv FSP_DIR /
  168.             endif
  169.  
  170.         endif
  171.  
  172.         if ( $?FSP_HOST ) then
  173.             echo "$FSP_HOST ($FSP_PORT): $FSP_DIR"
  174.         endif
  175.  
  176.         This alias lets you "connect" to a host quickly and easily.  For
  177.         instance, to start out I give the following command:
  178.  
  179.         % fhost wuarchive.wustl.edu
  180.         wuarchive.wustl.edu (21): /
  181.          
  182.         The "fhost" command tells me where I'm connected, on what port,
  183.         and in what directory.
  184.  
  185.         Since all "fhost" does is set up some environemnt variables, we
  186.         aren't REALLY connected.  To find out if the site is responding,
  187.         just do a quick "fls":
  188.  
  189.         % fls
  190.         README          etc/            mirrors2/       pub/
  191.         README.NFS      graphics/       mirrors3/       systems/
  192.         bin/            info/           mirrors4/       techreports/
  193.         decus/          languages/      multimedia/     usenet/
  194.         doc/            lost+found/     packages/       vendorware/
  195.         edu/            mirrors/        private/
  196.  
  197.         Looks like we're up and running!  Navigating with FSP is now
  198.         just like using the local filesystem, except the commands have
  199.         "f" in front of them.  For instance:
  200.  
  201.         % fcd /systems/amiga/incoming
  202.         directory mode: (owner: some other machine)(delete: NO)(create: NO)
  203.         % fls
  204.         AT3D-Demo.bad           devel/                  utils/
  205.         AT3D-Demo.readme        fish/                   wb30/
  206.         AT3D.lha                games/                  z_newfiles_Jul01
  207.         Amiga.help              gfx/                    z_newfiles_Jul02
  208.         DAKDUNGN.LZH            hardware/               z_newfiles_Jul03
  209.         DAKDUNGN.README         imagine/                z_newfiles_Jul04
  210.         DP_Desc_June.run        ls-lR.incoming          z_newfiles_Jun25
  211.         README.UPLOADER         ls-lR.incoming.Z        z_newfiles_Jun26
  212.         TREE                    misc/                   z_newfiles_Jun27
  213.         archive/                mods/                   z_newfiles_Jun28
  214.         audio/                  news/                   z_newfiles_Jun29
  215.         cam_list.zoo            patch/                  z_newfiles_Jun30
  216.         comm/                   programming/
  217.         demos/                  text/
  218.          
  219.         Other nice commands like "fcat filename" let me see what's out
  220.         there, or for larger files, "fcat filename | less" is very
  221.         effective.
  222.  
  223.         Once I see a nice file that I want copied to my local system, I
  224.         just give the "fget filename" command and away it goes.  Usually
  225.         I type "fget filename &" which throws the transfer request into
  226.         the background.  Then I can immediately go off and "fcd" to some
  227.         other directory and look for more files to grab, "fcat"-ing the
  228.         README files and such.
  229.  
  230.  
  231. Q1.4 What are those funny "R" and "I" characters?
  232.  
  233.         When FSP doesn't get any response from the server, it keeps on
  234.         sending requests.  The first time it retries, it prints an "R",
  235.         (meaning "Retry"), and the second, third, and subsequent times,
  236.         it prints an "I".  You might also see an "E", which means "error":
  237.         FSP got a packet, but it was corrupted for some reason.
  238.  
  239.         Fspclient does it slightly differently: it starts by printing
  240.         "r" and "R" characters, and then uses "-\|/" characters to draw
  241.         a spinning bar.  As Phil Richards (the author) says, `I quite
  242.         often see spinning bars, but usually only after the fifth pint'.
  243.  
  244.  
  245. Q1.5 Why should I, as a site admin, run an FSP daemon?
  246.  
  247.         Because it's one more way people can access your site, and it
  248.         won't cost you much extra load on the machine.  The FSP daemon
  249.         never forks, so it won't increase your load average by more than
  250.         one.  FSP doesn't add much to the network load either, and you
  251.         can limit the amount of data the daemon will send out (eg, to
  252.         2.5k/sec).
  253.  
  254.         FSP allows comprehensive logging, running off inetd, README
  255.         files per directory, banning on per-host or per-network basis,
  256.         reverse naming and read-only sites.  The only thing anonymous
  257.         FTP gives that FSP doesn't is having the user type in an email
  258.         address, and of course, this can easily be faked.  FSP logs give
  259.         the user's hostname, which is harder to fake.
  260.  
  261. -----------------------------------------------------------------------------
  262.  
  263.  
  264. Section 2: FSP software and resources
  265.  
  266. Q2.1 Where can I get an FTP-like interface for FSP?
  267.  
  268.         The interface I use is Phil Richards' (pgr@sst.icl.co.uk)
  269.         fspclient.  The latest version (still pre-alpha, but more
  270.         reliable than your average beta release) is fspclient.0.0-h.
  271.         You can get it by FTP from ftp.robots.ox.ac.uk as
  272.         /pub/ox.src/fspclient.0.0-h+.tar.Z .
  273.  
  274.         Another interface to use is Nicolai Langfeldt's 'fspcli'.  It
  275.         has a ftp like interface and more.  It is in the release
  276.         directory on ftp.germany, and it has also been posted on
  277.         alt.sources.  Another nice thing about it is that it's a
  278.         small(ish) perl script rather than a large compiled executable,
  279.         and it's not alpha OR beta.  Presently the latest version is 1.2
  280.  
  281.         Ove Ruben R Olsen (Ruben@uib.no) has written a client quite
  282.         similar to Nicolai's, but even smaller.  It is available in
  283.         the fspsh directory on taxus.uib.no/9000 (see below).
  284.  
  285.         Note that if you want to use either of the last two clients,
  286.         you'll have to have the Perl language installed.  You can get
  287.         the latest version by FTP from prep.ai.mit.edu in
  288.         /pub/gnu/perl*, or by FSP from wuarchive (see below) in
  289.         /mirrors/gnu/perl*.
  290.  
  291.  
  292. Q2.2 Where can I get a graphical interface for FSP?
  293.  
  294.         Andy Doherty <ssudoher@reading.ac.uk> has written an xview client
  295.         for the X Window System.  It is available from ftp.germany as
  296.         `fsptool-1.3.1.tar.gz'.  Like fspcli and fspshell, it acts as
  297.         an interface to the standard FSP shell commands, rather than
  298.         rewriting them itself.
  299.  
  300.         Note that to use this package, you will need the xview libraries:
  301.         if you're using a Sun workstation, you're OK: otherwise, you
  302.         may have to get and compile them yourself.
  303.  
  304.         If you're an OS/2 user, you can use the OS/2 client by Albert
  305.         Crosby <acrosby@uafhp.uark.edu>.  It wraps around the OS/2
  306.         FSP software (see above), and also requires RexxMenu and RxU.
  307.         It can read a list of files in the standard FSP host listing
  308.         format, and uses RexxMenu's point-and-click interface.
  309.  
  310.  
  311. Q2.3 Where can I get hold of a list of sites?
  312.  
  313.         Dan Charrois <ae277@freenet.carleton.ca> maintains a list of FSP
  314.         servers, and you can get more information about it by sending a
  315.         message to "charro@ee.ualberta.ca" with the subject "fsp list" and
  316.         the word "help" on a line by itself in the body of the message.
  317.         You can get the latest list by saying "list" instead of "help".
  318.         The help message will tell you how to add new site information.
  319.  
  320.         You are also encouraged to post site information to alt.comp.fsp,
  321.         and if you post in the format below, most people will be able
  322.         to slurp your list straight into their front-end programs.
  323.         There's an unofficial standard for the format, which you can
  324.         find on taxus in the file "fsplist.std".
  325.  
  326.         In the meantime, here's a list to get you going.
  327.  
  328.         128.52.46.11      21   alpha   / # GNU Alpha releases
  329.         158.125.220.8     21   genie   / # small UK site
  330.         192.76.144.75     2001 germany / # big German archive
  331.         fsp.luth.se       6969 luth    / # Top of Europe
  332.         131.215.131.148   21   mosaic  / # BSD386/Usenet
  333.         134.109.132.2     21   pyrrhus / # OS2, linux, simtel, etc.
  334.         146.169.2.1       21   src     / # big UK site
  335.         129.177.30.10     9000 taxus   / # fspadm, fsp-shell tools
  336.         131.155.140.128   21   terra   / # big Netherlands site
  337.         18.172.1.2        21   tsx     / # linux
  338.         fsp.warwick.ac.uk 21   warwick / # Computer Underground Digest
  339.         128.252.135.4     21   wu      / # everything you ever wanted
  340.  
  341.  
  342. Q2.4 Where can I get hold of hundreds of pictures of naked women in
  343.      compromising positions?
  344.  
  345.         Don't ask me, I only edit the FAQ :-)
  346.  
  347.         Seriously, FSP has a reputation of being for "crooks and
  348.         perverts".  If you know any good sites carrying illegal
  349.         material, then do them a favour and keep them to yourself.
  350.         Posting them won't make you any friends.
  351.  
  352.         If someone posts a list of sites, and you didn't want them to,
  353.         please don't publicly flame them.  It doesn't endear you to
  354.         anyone.  If you must put them right, send email.  Thank you.
  355.  
  356. ---------------------------------------------------------------------------
  357.  
  358.  
  359. Section 3: Technical Issues
  360.  
  361. Q3.1 What are the main differences between FSP and FTP?  How does FSP work?
  362.  
  363.         From the user's point of view, the differences are not that
  364.         great, except that some of the more annoying features of FTP
  365.         are gone.  Here are the main differences.
  366.  
  367.                 a. The protocol can stand things going down: if the
  368.                 server or the network falls over in the middle of a
  369.                 transfer, you can just wait until it comes back up.
  370.                 You don't have to reconnect, and even better, if the
  371.                 server went down 90% through grabbing a file, you can
  372.                 continue from where you left off.
  373.  
  374.                 b. The protocol doesn't need a username or password.
  375.                 You just throw packets at the server.  You don't have
  376.                 to identify yourself (though you're not completely
  377.                 anonymous -- see below).
  378.  
  379.                 c. It's harder to kill off a site with an FSP server
  380.                 than with an FTP server.  The FSP daemon is designed to
  381.                 be as lightweight as possible:  it doesn't fork off any
  382.                 sub-processes, and it takes steps to limit the amount
  383.                 of traffic it handles.
  384.  
  385.                 d. The user interface is completely different.  The
  386.                 interface that comes with the package consists of
  387.                 eleven commands that you can call from the shell.  In
  388.                 effect, your shell is providing all the nice functions
  389.                 like command line editing.  This makes the interface
  390.                 much more versatile than FTP's.  (See below for how to
  391.                 get an FTP-like interface, though).
  392.  
  393.                 e. FSP is a bit slower than FTP.  This is a feature,
  394.                 not a bug.  The point is to keep the communication
  395.                 lightweight, and not to flood the net.
  396.  
  397.         From the programmer's point of view, fsp is a complete rewrite.
  398.  
  399.                 a. Instead of TCP sockets, it uses datagrams to
  400.                 communicate, so that the connection doesn't break on a
  401.                 flaky line.
  402.  
  403.                 b. FTP works by opening a port, and then asking the
  404.                 server to send a file to it.  FSP uses the same port
  405.                 all the time for communication, and asks for segments
  406.                 of a file.  So you can start off a transfer half way
  407.                 through a file, if you really want to.
  408.  
  409.                 c. The server tries to make sure you don't ask for
  410.                 packets too quickly.  Each packet it sends out has a
  411.                 random identification number, which the client must
  412.                 return on the next request.  (If the client loses the
  413.                 number, it must wait a few seconds before the server
  414.                 accepts another packet from it).  Therefore, the client
  415.                 has to wait for an answer to each request before it
  416.                 sends out the next one.
  417.  
  418.  
  419. Q3.2 How secure/anonymous is FSP?
  420.  
  421.         By default, the FSP daemon keeps logs of transactions, along
  422.         with their site names.  An FSP administrator could use this to
  423.         find out who you are, with a reasonable degree of certainty.
  424.  
  425.         In short, FSP gives you no more privacy than anonymous FTP.
  426.         Anyone who tells you different has a less devious mind than most
  427.         FSP admins I know.
  428.  
  429.         Why not make FSP more anonymous?  Well, it's impossible to make
  430.         a protocol with complete anonymity, since at some point, the
  431.         remote site will have to send a file back to you, and it needs
  432.         at least an address to send it to.
  433.  
  434.         If you really need privacy, you can encrypt any files you make
  435.         available, and only give out the decryption password to a select
  436.         few.  But of course, you have to trust them to keep the password
  437.         safe.
  438.  
  439.  
  440. Q3.3 Why not add passwords to FSP?
  441.  
  442.         (Thanks to Joseph Traub for the material for this section)
  443.  
  444.         1. They don't add much security.  If you use one password for
  445.            the whole site, then you might just as well set up the site
  446.            and only tell a few people its port number.  That's no more
  447.            or less secure than using a password.  Besides, it's easier
  448.            just to set up the server only to respond to certain hosts.
  449.  
  450.         2. Any other password system is likely to be a big lose on
  451.            efficiency, since you'll have to check every single packet.
  452.  
  453.         3. The main use of server passwords appears to be so that people
  454.            can move pirated software around, and the authors don't want
  455.            to add code to support that.
  456.  
  457.         To quote Joseph Traub, the ex-FSP maintainer: 
  458.  
  459.                 If you really want to do passworded file transfer, grab
  460.                 a copy of the ftpd source code (which is also on my
  461.                 server) and modify it to a) use a higher port number
  462.                 (Yes virginia, you CAN specify port numbers to most ftp
  463.                 clients) and b) to read a file other than /etc/password
  464.                 to look up user information.
  465.  
  466.                 This capability does NOT belong in FSP because it gets
  467.                 away from the concept of lightweight simple file
  468.                 transfers.
  469.  
  470.         And to quote Phil Richards, one of the current FSP maintainers:
  471.  
  472.                 I agree.
  473.  
  474.         Just for added emphasis, the other FSP maintainer adds:
  475.  
  476.                 Me too :-)
  477.  
  478.  
  479. Q3.4 So what *does* FSP stand for?
  480.  
  481.         As of 12th August 1993, FSP stands for `File Service Protocol'.
  482.         Thanks to mg@ac.duke.edu (Michael Grubb) for the words, and
  483.         Wen-King for the initials.
  484.  
  485.         Other suggestions were:
  486.  
  487.                 File Slurping Protocol
  488.                 Flaky Stream Protocol
  489.                 FTP's Sexier Partner
  490.  
  491.  
  492. ---------------------------------------------------------------------------
  493.  
  494.  
  495. Section 4: Who's Who?
  496.  
  497. Q4.1: Who writes and maintains FSP software?
  498.  
  499.         Wen-King Su (wen-king@cs.caltech.edu) wrote the original Unix
  500.         version (versions 1.0 to 2.6.4).
  501.  
  502.         Joseph Traub (was jtraub@cs.cmu.edu) was maintainer from Dec
  503.         1992 to July 1993 (versions 2.6.5 to 2.7.1).
  504.  
  505.         The current maintainers are Phil Richards (pgr@sst.icl.co.uk)
  506.         and Pete Bevin (pete@sst.icl.co.uk).  Phil is also the maintainer
  507.         of fspclient, an FTP-like interface for FSP.
  508.  
  509.         Sven Pechler (S.A.Pechler@bdk.tue.nl) wrote and maintains a VMS
  510.         version.  OS/2 is handled by Larkin Lowrey (llowrey@ucsd.edu),
  511.         and Lindsey Smith, of the MS-DOS rewrite is SMITH@fgs200.fgs.com.
  512.  
  513.  
  514. Q4.2 Who helped put this FAQ together?
  515.  
  516.  
  517.         The following people have contributed to the FAQ.  Thanks very
  518.         much to all of them.
  519.  
  520.                 Pete Bevin <pete@sst.icl.co.uk>
  521.                 Tony Brannigan <tbrann@ox.ac.uk>
  522.                 Maurizio Codogno <mau@beatles.cselt.stet.it>
  523.                 David DeSimone <fox@netcom.com>
  524.                 Ian Dickinson <vato@violet.csv.warwick.ac.uk>
  525.                 Andy Doherty <ssudoher@reading.ac.uk>
  526.                 Jan Nicolai Langfeldt <janl@ifi.uio.no>
  527.                 Ove Ruben R Olsen <Ruben@uib.no>
  528.                 Lutz Prechelt <prechelt@ira.uka.de>
  529.                 Phil Richards <pgr@sst.icl.co.uk>
  530.                 Lindsey Smith <SMITH@fgs200.fgs.com>
  531.                 Wen-King Su <wen-king@cs.caltech.edu>
  532.                 Joseph Traub <jtraub@cs.cmu.edu>
  533.  
  534.